package com.bitc.crash.model.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 商品视图对象
 */
@Data
@Schema(description = "商品信息")
public class CommodityVO implements Serializable {

    private static final long serialVersionUID = 1L;

    @Schema(description = "商品ID")
    private Long id;

    @Schema(description = "商品名称")
    private String name;

    @Schema(description = "商品描述")
    private String description;

    @Schema(description = "商品分类ID")
    private Long categoryId;

    @Schema(description = "商品分类名称")
    private String categoryName;

    @Schema(description = "商品基础价格")
    private BigDecimal basePrice;

    @Schema(description = "商品图片URL")
    private String imageUrl;

    @Schema(description = "商品状态：0-下架，1-上架")
    private Integer status;

    @Schema(description = "商品规格JSON")
    private String specifications;

    @Schema(description = "商品加料JSON")
    private String additions;

    @Schema(description = "商品标签")
    private String tags;

    @Schema(description = "排序权重")
    private Integer sortWeight;

    @Schema(description = "销售数量")
    private Integer salesCount;

    @Schema(description = "库存数量")
    private Integer stockCount;

    @Schema(description = "创建时间")
    private LocalDateTime createTime;
} 